package com.atguigu.gmall.pms.config;


import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;


/**
 * mybatisPlus分页拦截器的配置
 *          医疗项目用的类名不是这个，因为mybatisPlus的版本问题，
 *          3.4后的版本都用这个类配置，底层都是一样的，不过这个类封装了一下
 *          项目二的mybatisPlus是3.3.1。项目三用的版本3.4.3.4
 */
@Configuration //配置类注解
public class MybatisPlusConfig {

    //添加拦截器并注入到容器中
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {//医疗项目用的类名不是这个，因为mybatisPlus的版本问题，3.4后的版本都用这个类配置，底层都是一样的，不过这个类封装了一下
        MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
        //分页拦截器
        mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor());
        //乐观锁拦截器
        mybatisPlusInterceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
        return mybatisPlusInterceptor;
    }

}
